Connected component labeling is an operation frequently used in image processing and computer vision applications to distinguish objects in a picture. Unlike human vision, a picture is “seen” by computer vision (or machine vision) in raster-scan order. In an example of a picture with a “U”-shaped object, since the picture is processed in raster-scan order, the machine will treat the left and right branches of the “U”-shaped object as two objects until the machine reaches the bottom of the “U”-shaped object. The machine then realizes the two branches actually belong to one object.
In implementations of connected component labeling, the two objects corresponding to the two branches are connected (merged) by creating a link between them in a component table. Images can contain many objects. Thus, a large component table may be needed to store information about each object, including a link-pointer indicating whether an object is merged to another object.
It would be desirable to implement link-list shortening logic.